home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MACD 5
/
MACD 5.bin
/
workbench
/
libs
/
unixlib.lha
/
unix
/
include
/
signal.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-10-16
|
2KB
|
75 lines
#ifndef _SIGNAL_H
#define _SIGNAL_H
#include <sys/types.h>
#define NSIG 32 /* We define lots of signals (though most are
never generated) */
/* Signal number definitions */
/* Those which can be generated other than by kill are described with
<name>, amiga: <cause> */
#define SIGHUP 1 /* hangup */
#define SIGINT 2 /* interrupt, amiga: ctrl-c */
#define SIGQUIT 3 /* quit, amiga: ctrl-d */
#define SIGILL 4 /* illegal instruction */
#define SIGTRAP 5 /* trace trap */
#define SIGIOT 6 /* abort, amiga: abort() called */
#define SIGABRT SIGIOT /* compatibility */
#define SIGEMT 7 /* emulator trap */
#define SIGFPE 8 /* arithmetic exception, amiga: arith op */
#define SIGKILL 9 /* kill */
#define SIGBUS 10 /* bus error */
#define SIGSEGV 11 /* segmentation violation */
#define SIGSYS 12 /* bad argument to system call */
#define SIGPIPE 13 /* write on pipe or socket with no reader,
amiga: generated for 'pipe's or 'sktpair's */
#define SIGALRM 14 /* alarm clock, amiga: see alarm */
#define SIGTERM 15 /* software termination */
#define SIGURG 16 /* urgent condition on socket */
/* SIGSTOP, SIGTSTP, SIGCONT, SIGTTIN, SIGTTOU undefined to avoid creating the
belief that we support stopped processes */
#define SIGCHLD 20 /* child status has changed */
#define SIGIO 23 /* I/O possible on a descriptor */
/* Less usual signals: SIGXCPU, SIGXFSZ, SIGVTALARM, SIGPROF, SIGLOST not defined */
#define SIGWINCH 28 /* window changed */
#define SIGUSR1 30 /* user-defined signal 1 */
#define SIGUSR2 31 /* user-defined signal 2 */
#if 0
#define SIG_DFL (void *)0
#define SIG_IGN (void *)1
#else
#define SIG_ERR (void (*)(int)) -1
#define SIG_DFL (void (*)(int)) 0
#define SIG_IGN (void (*)(int)) 1
#endif
/*
* Flags for sigprocmask:
*/
#define SIG_BLOCK 1 /* block specified signal set */
#define SIG_UNBLOCK 2 /* unblock specified signal set */
#define SIG_SETMASK 3 /* set specified signal set */
/*
* Macro for converting signal number to a mask
*/
#define sigmask(m) (1UL << (m))
typedef long sigset_t;
extern void (*signal(int sig,void (*fn)(int)))(int);
extern int raise(int);
extern long sigsetmask(long mask);
extern int sigprocmask(int, const sigset_t *, sigset_t *);
/* Only kill(getpid(), sig) works */
/* Also, getpid() is a unique number for this process */
extern int getpid(void);
extern int kill(int pid, int sig);
#endif